package org.kl.auditsupervision.entity.fnd;

import java.sql.Timestamp;

import javax.persistence.Entity;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

import org.kl.bf.entity.AuditableEntity;
import org.kl.bf.entity.Excel;
import org.kl.bf.entity.basic.User;

import com.fasterxml.jackson.annotation.JsonFormat;
 
/**
 * 
 * 审计缺陷汇总表
 * @author LJ
 *
 */
@Entity
@Table(name = "sjjc_audit_defect")
public  class AuditDefect extends AuditableEntity{
	private static final long serialVersionUID = 1L;
	@Excel(exportName = "项目名称|审计监察法务发现问题|审计监察法务建议",exportProperty="auditPro.auditName|auditFinding|auditSuggestion")
	private AuditProDtl auditProDtl;
	@Excel(exportName = "内控分类")
	private String nkfl;
	@Excel(exportName = "缺陷类别")
	private String qxlb;
	@Excel(exportName = "缺陷描述")
	private String qxms;
	@Excel(exportName = "缺陷影响分类")
	private String qxyxfl;
	@Excel(exportName = "缺陷量化")
	private String qxlh;
	@Excel(exportName = "危害程度")
	private Integer whcd;
	@Excel(exportName = "可能程度")
	private Integer kncd;
	@Excel(exportName = "关注程度")
	private String gzcd;
	@Excel(exportName = "缺陷认定")
	private String qxrd;
	@Excel(exportName = "缺陷原因归类")
	private String qxyygl;
	/*@Excel(exportName = "涉及单位")
	private Org org;*/
	@Excel(exportName = "单位层级")
	private Integer dwcj;
	
	@Excel(exportName = "整改情况")
	private String zgqk;
	@Excel(exportName = "整改态度")
	private String zgtd;
	@Excel(exportName = "问题类别")
	private String wtlb;
	@Excel(exportName = "问题严重程度")
	private String wtyzcd;
	@Excel(exportName = "剩余风险可接受程度")
	private String syfxkjscd;
	@Excel(exportName = "动因性质")
	private String dyxz;
	private String status;
	private User lastUpdateBy;
	private Timestamp lastUpdateTime;
	@Excel(exportName = "年份")
	private String year;
	
	public AuditDefect() {
	}

	public AuditDefect(String id) {
		this.id = id;
	}
	
	public String getNkfl() {
		return nkfl;
	}
	public void setNkfl(String nkfl) {
		this.nkfl = nkfl;
	}
	public String getQxlb() {
		return qxlb;
	}
	public void setQxlb(String qxlb) {
		this.qxlb = qxlb;
	}
	public String getQxms() {
		return qxms;
	}
	public void setQxms(String qxms) {
		this.qxms = qxms;
	}

	public String getQxyxfl() {
		return qxyxfl;
	}

	public void setQxyxfl(String qxyxfl) {
		this.qxyxfl = qxyxfl;
	}

	public String getQxlh() {
		return qxlh;
	}
	public void setQxlh(String qxlh) {
		this.qxlh = qxlh;
	}
	public Integer getWhcd() {
		return whcd;
	}
	public void setWhcd(Integer whcd) {
		this.whcd = whcd;
	}
	public Integer getKncd() {
		return kncd;
	}
	public void setKncd(Integer kncd) {
		this.kncd = kncd;
	}
	public String getGzcd() {
		return gzcd;
	}
	public void setGzcd(String gzcd) {
		this.gzcd = gzcd;
	}
	public String getQxrd() {
		return qxrd;
	}
	public void setQxrd(String qxrd) {
		this.qxrd = qxrd;
	}
	public String getQxyygl() {
		return qxyygl;
	}
	public void setQxyygl(String qxyygl) {
		this.qxyygl = qxyygl;
	}

	public Integer getDwcj() {
		return dwcj;
	}
	public void setDwcj(Integer dwcj) {
		this.dwcj = dwcj;
	}
	
	@ManyToOne
	@JoinColumn(name = "AUDIT_PRO_DTL_ID")
	public AuditProDtl getAuditProDtl() {
		return auditProDtl;
	}

	public void setAuditProDtl(AuditProDtl auditProDtl) {
		this.auditProDtl = auditProDtl;
	}

	public String getZgqk() {
		return zgqk;
	}
	public void setZgqk(String zgqk) {
		this.zgqk = zgqk;
	}
	public String getZgtd() {
		return zgtd;
	}
	public void setZgtd(String zgtd) {
		this.zgtd = zgtd;
	}
	public String getWtlb() {
		return wtlb;
	}
	public void setWtlb(String wtlb) {
		this.wtlb = wtlb;
	}
	public String getWtyzcd() {
		return wtyzcd;
	}
	public void setWtyzcd(String wtyzcd) {
		this.wtyzcd = wtyzcd;
	}
	public String getSyfxkjscd() {
		return syfxkjscd;
	}
	public void setSyfxkjscd(String syfxkjscd) {
		this.syfxkjscd = syfxkjscd;
	}
	public String getDyxz() {
		return dyxz;
	}
	public void setDyxz(String dyxz) {
		this.dyxz = dyxz;
	}

	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	@ManyToOne
	@JoinColumn(name = "LAST_UPDATE_BY")
	public User getLastUpdateBy() {
		return lastUpdateBy;
	}

	public void setLastUpdateBy(User lastUpdateBy) {
		this.lastUpdateBy = lastUpdateBy;
	}

	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
	public Timestamp getLastUpdateTime() {
		return lastUpdateTime;
	}

	public void setLastUpdateTime(Timestamp lastUpdateTime) {
		this.lastUpdateTime = lastUpdateTime;
	}

	public String getYear() {
		return year;
	}

	public void setYear(String year) {
		this.year = year;
	}

	 
}
